package main

import (
	"fmt"
	"sync"
	"time"
)

var wg sync.WaitGroup

func primeCount(start, end int) {
	for i := start; i <= end; i++ {
		for j := 2; j < i; j++ {
			if i%j == 0 {
				break
			}
		}
	}
	wg.Done()
}

func main() {
	var startTime = time.Now()

	// // 一般执行
	// primeCount(1, 25000)
	// primeCount(25001, 50000)
	// primeCount(50001, 75000)
	// primeCount(75001, 100000)

	// 协程执行
	wg.Add(1)
	go primeCount(1, 25000)
	wg.Add(1)
	go primeCount(25001, 50000)
	wg.Add(1)
	go primeCount(50001, 75000)
	wg.Add(1)
	go primeCount(75001, 100000)

	wg.Wait()

	fmt.Println("消耗时间：", time.Now().Sub(startTime))
}
